package 树;

import java.util.Arrays;
/*
* 给定两个字符串 s 和 t ，编写一个函数来判断 t 是否是 s 的字母异位词。

示例 1:

输入: s = "anagram", t = "nagaram"
输出: true
示例 2:

输入: s = "rat", t = "car"
输出: false
* */

/*
* 方法1：两个字符串 转换成char数组 排序 一一对比
* 方法二：我们可以先用计数器表计算 ss，然后用 tt 减少计数器表中的每个字母的计数器。如果在任何时候计数器低于零，我们知道 tt 包含一个不在 ss 中的额外字母，并立即返回 FALSE。

* 做题的时候不应该想着要怎么去实现 而是实现后反推
* */
public class 字母异位词 {
    public static void main(String[] args) {
        Boolean map=true;
        String s="anagram";
        String t="nagarcm";
        if(s.length()!=t.length()){
            map=false;
        }
        char[] chars = s.toCharArray();
        char[] chart = t.toCharArray();
        Arrays.sort(chars);
        Arrays.sort(chart);
        if(Arrays.equals(chars,chart)){
            map=true;

        }
        else map=false;

        System.out.println(map);

    }
}
